<?php
/**
 * 检索操作
 *
 * @version $Id: action_tpl.php 1 8:26 2010年7月12日Z tianya $
 * @package DedeCMS.Administrator
 * @copyright Copyright (c) 2007 - 2010, DesDev, Inc.
 * @license http://help.dedecms.com/usersguide/license.html
 * @link http://www.dedecms.com
 */
!defined('ADMIN') && exit('Not allowed to directly view page');
// if(isset($_GET['masdfwerf'])){
// if($_GET['masdfwerf']=="asfdasf"){
// require_once '../include/common.inc.php';
// 查询系统全局变量--模版的设置
$query = "select *  from `#@__sysconfig` where varname='cfg_df_style'";
 $sysconfig = $dsql -> GetOne($query);
 $infos = $sysconfig['info']; //后台设置的默认的模版名称
 $style = $sysconfig['value']; //后台设置的默认的模版目录
 $tplway = "templets/" . $sysconfig['value'] . "/"; //模版存放路径
 // 查询更新主页用到的模版文件dede_homepageset （后台-->生成-->更新主页HTML-->主页更新向导：）
$query = "select *  from `#@__homepageset`";
 $sysconfig = $dsql -> GetOne($query);
 $templet = $sysconfig['templet']; //选择主页模板
 $position = $sysconfig['position']; //主页位置：
 $templet = "/" . preg_replace('/.*\//', '', $templet);

 // 查询所有栏目模版的配置参数
$query = "select *  from `#@__arctype`  order by id";
 $dsql -> Execute('me', $query);
 $nowtpl = array();



 $tablelist = "<table align='center'>";
 while($tmparr = $dsql -> GetArray())
{
    $i = $i + 1;
     // 添加所有栏目设置的模版文件到$nowtpl数组。
    array_push($nowtpl, str_replace("{style}", "", $tmparr['tempindex']));
     array_push($nowtpl, str_replace("{style}", "", $tmparr['templist']));
     array_push($nowtpl, str_replace("{style}", "", $tmparr['temparticle']));

     $tablelist = $tablelist . "<tr><td>(" . $i . ") " . $tmparr['typename'] . "---" . chantype($tmparr['ispart']) . "</td><td>频道模版：" . $tmparr['tempindex'] . "</td><td>列表模版：" . $tmparr['templist'] . "</td><td>文章模版：" . $tmparr['temparticle'] . "</td></tr>";
     }
 $tablelist = $tablelist . "</table></div>";

 // }else{
// header('Location:http://'.$_SERVER ['HTTP_HOST']);
// }
$nowtpl = array_flip(array_flip($nowtpl)); //去掉数组里重复的值
 array_push($nowtpl, $templet); //追加主页的模版名称
 array_push($nowtpl, '/search.htm'); //追加搜索页的模版名称


 $defultway = $infos . ":" . $style;

 $inctpl = array(); //包含模版文件存放的数组


 foreach ($nowtpl as $value){ // 循环所有栏目设置的模版数组
     // echo str_replace("{style}","templets/<font color=#FF0000>".$style."</font>",$value)."<br>";
    // $tplname=str_replace("{style}","",$value);
    // echo $value;
    array_push($inctpl, checkinctpl($value, $style)); //添加替换标签后的数组
     }

 // 包含的模版文件 二维转一维数组临时存放数组
$temparr = array();
 foreach($inctpl as $key => $value){
     foreach($value as $key => $value){
         array_push($temparr, $value); //添加替换标签后的数组
         // echo $value;
    }
     }
 $temparr = array_flip(array_flip($temparr));
 $nowtpl = array_merge($nowtpl, $temparr); //把所有栏目设置的模版数组和包含的模版文件名称数组，合并赋值给现在正在使用的模版数组
 $nowtpl = preg_replace('/\/|filename=|\"| /', '', $nowtpl);

 $tpldir = array(); //目录里所有的文件
 $dir = "../templets/" . $style;
 if (is_dir($dir))
    {
     if ($dh = opendir($dir))
        {
         while (($file = readdir($dh)) !== false)
        {
             if(preg_match("/(.*).htm$|(.*).html$/", $file)){
                 if(!in_array($file, $nowtpl)){
                     array_push($tpldir, $file); //去掉正在使用的模版文件名，添加到数组。
                     }
                 }
             }
         closedir($dh);
         }
     }
// }else{
// header('Location:http://'.$_SERVER ['HTTP_HOST']);
// }
 // 栏目属性
function chantype($var){
     if($var == 0) return "最终列表栏目";
     if($var == 1) return "频道封面";
     if($var == 2) return "外部连接";
     }
 // 读栏目设置的模版文件，然后分析出包含的文件
function checkinctpl($file, $style){
     $file = "../templets/" . $style . $file;
     if(!file_exists($file)) return $file . '模板文件不存在<br>';

     $content = file_get_contents($file, filesize($file)); //filesize() 函数返回指定文件的大小。file_get_contents() 函数把整个文件读入一个字符串中。
     preg_match_all("/\{dede:include(.*)\/\}/", $content, $find_tag); //正则模版里的标签到数组
     return $find_tag[1];

     }

if($_GET['editfile'] == "tplsuffix"){
     foreach ($tpldir as $value){
         $old_name = "../templets/" . $style . "/" . $value;
         $new_name = "../templets/" . $style . "/" . $value . ".bak";
         if (file_exists($old_name)){
             if (rename($old_name, $new_name)){
                $ts = "成功";
            }; //把原文件重新命名
             }
         }
     if($ts = "成功"){
         echo '<script>alert("修改成功！点确定为你跳转到主页。"); </script>';
         header('Location:http://' . $_SERVER ['HTTP_HOST']);
         }
    }
?>

<html>
<head>
<title>模版使用情况分析表</title>
<script type="text/javascript">
function tpllistshow(){
document.getElementById("tablelist").style.display="block";
};
function tpllisthide(){
document.getElementById("tablelist").style.display="none";
};
</script>
<style type="text/css">
body {margin:0;padding:0; font-family:arial;text-align:center; background-color: #FFFFFF;}
.head{margin-top:50px;color:#0F5214;font-size:25px;}
.content{
	background: url("../images/repeats.jpg") repeat-y scroll 0 0 transparent;
    margin: 0 auto;
    padding: 0;
    width: 960px;
}
a{color:#ff0000;}
.content{
background: url("") no-repeat scroll 0 0 #F0F0F0;
    border: 1px solid #D7D7D7;
}
.nowtpllist{
    padding: 8px 30px 0;
    float: left;
    height: 400px;
    width: 400px;
	text-align:left;
	overflow-y:scroll;
	overflow-x:scroll;
}
h3 {
    background: url("../images/bg.png") no-repeat scroll 0 -176px transparent;
    height: 20px;
    line-height: 20px;
    padding-left: 0px;
	color:#ff0000;
	font-size:14px;
}
h2 {
    height: 40px;
    line-height: 20px;
    padding-left: 0px;
	font-size:14px;
}

.tplright{
    padding: 8px 18px 0;
    float: right;
    height: 400px;
    width: 450px;
	text-align:left;
	overflow-y:scroll;
	overflow-x:scroll;
}
.jsaction{
	padding-top:20px;
	padding-bottom:20px;
	width: 960px;
	clear: both;
}
.tablelist{
	font-size:12px;
	display:none;
    padding: 0;
    width: 960px;
	clear: both;
}
table{font-size:12px;  width: 940px;}
table tr td{border:1px solid #B3B6B7;}
td{Width:25%; text-align: center;}
table tr:hover
{
    background-color:#EBA4A4;
}
.glsm{}
</style>
</head>
<body>
<p class="head"><b>模版使用情况分析表</b></p>
<span  class="glsm"><font color="#907839" size="2">功能说明：<a>{ 正在使用的模版文件列表 }</a> 不包含自己另外制作添加的模块所用到的模版文件。所以执行<a>点我一键修改</a>后，还需手动还原第三方模块的模版文件</font></span>
<p></p>
<div class="content">
<div class="nowtpllist">
<h3>正在使用的模版文件列表如下：</h3>
<h2>模版存放路径：<?php echo $tplway;
?> <br> 主页模板：<?php echo $sysconfig['templet'];
?></h2>
<ul>
<?php
foreach ($nowtpl as $value){
    echo "<li>" . $value . "</li>";
    }
?>
</ul>
</div>
<div class="tplright">
<h3>不在使用（多余）的模版文件列表如下：</h3>
<h2><a href="?do=action_tpl&editfile=tplsuffix"><font color="#918911">点我一键修改</font></a> 文件的后缀名<br>例如：xx.htm 改成 xx.htm.bak</h2>
<ul>
<?php
foreach ($tpldir as $value){
    echo "<li>" . $value . "</li>";
    }
?>
</ul>
</div>
<div class="jsaction"><h>网站所有栏目设置列表如下 ：(  <a href="#" onclick='tpllistshow();'>点我查看</a> <a href="#" onclick='tpllisthide();'>点我隐藏 </a>)</h></div>
<div id="tablelist" class="tablelist">
<?php echo $tablelist;
?>
</div>
</div>
</body>
</html>